import axios from "axios";

export const request = axios.create();

request.interceptors.request.use(
  (config) => {
    // 在发送请求之前做些什么
    //设置token
    console.log(config);

    if (
      !config.headers.Authorization &&
      !config.url.includes("/login") &&
      !config.url.includes("/addUser")
    ) {
      config.headers.Authorization = JSON.parse(
        sessionStorage.getItem("userInfo")
      ).token;
    }
    return config;
  },
  (err) => {
    // 对请求错误做些什么
    return Promise.reject(err);
  }
);
// 响应拦截器
request.interceptors.response.use(
  (response) => {
    // 检查返回的data.code是否为401

    return response.data;
  },
  (error) => {
    return Promise.reject(error);
  }
);

/**
 * 处理异常
 * @param {Error|String|Object} err 异常信息
 */
export const handleError = (err) => {
  let errMsg;
  if (typeof err === "string") {
    errMsg = err;
  } else if (err instanceof Error) {
    errMsg = err.message;
  } else {
    errMsg = JSON.stringify(err);
  }
  //   this.$message.error("错了哦，这是一条错误消息");
  throw new Error(errMsg);
};
